import { get, post } from '@/utils/http'

enum API {
  // 获取文件列表
  GETFILELIST_API = '/file/getFileList',
  /** 绑定上传者 */
  BINGFILEANDUSER_API = '/file/bingFileAndUser',
  /** 删除文件 */
  DELETEFILE_API = '/file/deleteFile',
  /** 文件下载 */
  DOWNLOADFILE_API = '/file/downloadFile',
  /** 更新下载量 */
  UPDATEDOWNLOADNUMBER_API = '/file/updateDownloadNumber'
}
// 获取文件列表
export const getFileListAPI = (page: number) => {
  return get<FileList[]>(API.GETFILELIST_API, { params: { page } })
}

// 绑定上传者
export const bingFileAndUserAPI = (name: string, url: string) => {
  return post<void>(API.BINGFILEANDUSER_API, { name, url })
}

// 删除文件
export const deleteFileAPI = (id: number, file_name: string) => {
  return post<void>(API.DELETEFILE_API, { id, file_name })
}

// 文件下载
export const downloadFileAPI = (file_url: string) => {
  return get(API.DOWNLOADFILE_API, { params: { file_url } })
}

// 更新下载量
export const updateDownloadNumberAPI = (download_number: number, id: number) => {
  return post(API.UPDATEDOWNLOADNUMBER_API, { download_number, id })
}
